package com.yqzl.util;

import com.yqzl.entity.Label;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.time.Instant;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
import java.util.List;

public class DataUtils {
  public static String md5(String password) {
    try {
      MessageDigest md = MessageDigest.getInstance("MD5");
      byte[] array = md.digest(password.getBytes());
      StringBuilder sb = new StringBuilder();
      for (byte b : array) {
        sb.append(String.format("%02x", b));
      }
      return sb.toString();
    } catch (NoSuchAlgorithmException e) {
      throw new RuntimeException("MD5加密失败", e);
    }
  }

  /**
   * 获取当前中国时间（北京时间）的格式化字符串
   *
   * @return 格式化后的中国时间字符串，格式为 "yyyy-MM-dd HH:mm:ss"
   */
  public static String getCurrentChinaTimeString() {
    // 获取当前时间在中国时区（UTC+8）的表示
    ZonedDateTime chinaTime = Instant.now().atZone(ZoneId.of("Asia/Shanghai"));
    // 定义日期时间格式
    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    // 返回格式化后的字符串
    return chinaTime.format(formatter);
  }

  public static String[] toStringArraylist(List<Label> list) {

    // 手动转换为 String[]
    String[] stringArray = new String[list.size()];
    for (int i = 0; i < list.size(); i++) {
      stringArray[i] = list.get(i).getLName(); // 显式调用 toString()
    }
    return stringArray;
  }

  public static void main(String[] args) {

  }
}
